package com.xl.basic.service;

import com.xl.basic.entity.Result;
import com.xl.basic.entity.param.LoginByPasswordParam;
import com.xl.basic.entity.result.LoginResult;
import com.xl.basic.entity.UserInfo;
import lombok.NonNull;

/**
 * @author 钟勇
 * Create in 2023/8/24 16:40
 */
public interface LoginService {
    /**
     * 使用密码登录
     *
     * @param param param
     * @return 登录信息
     */
    Result<LoginResult> loginByPassword(@NonNull LoginByPasswordParam param);


    Result<LoginResult> loginByWxCode(@NonNull String code);


    /**
     * 获取用户信息
     *
     * @param userId userId
     * @return userInfo
     */
    Result<UserInfo> getUserInfo(String userId);
}
